package com.example.demo.threadDemo.aCreateThread;

/**
 * @Description MyThresd2_2
 * @Author songchuanlong
 * @Date 2025-04-14
 */

/**
 * 多线程创建方式二的匿名内部类写法
 * 可以创建Runnable的匿名内部类对象。
 * 再交给Thread线程对象。
 * 再调用线程对象的start()启动线程。
 */
public class MyThresd2_2 {
    public static void main(String[] args) {
        //创建任务对象
        Runnable target=new Runnable() {
            @Override
            public void run() {
                for (int i = 1; i <=5; i++) {
                    System.out.println("子线程1输出："+i);
                }
            }
        };

        //将任务对象交给线程对象处理
        new Thread(target).start();


        //简化形式1：
        new Thread(new Runnable() {
            @Override
            public void run() {
                for (int i = 1; i <=5; i++) {
                    System.out.println("子线程2输出："+i);
                }
            }
        }).start();


        //简化形式2：
        new Thread(() ->{
                for (int i = 1; i <=5; i++) {
                    System.out.println("子线程3输出："+i);
                }
        }).start();



        //执行主线程
        for (int i = 1; i <=5; i++) {
            System.out.println("主线程main输出："+i);
        }

    }
}
